package com.zycfc.zsf.boot.common.enums;

import com.zycfc.zsf.boot.util.common.*;

public enum ZsfConfigEnum implements AbstractEnum<String>
{
    local("10.94.1.13:8700", "local-00100", "\u672c\u5730\u73af\u5883"), 
    dev("10.94.1.13:8700", "dev-00200", "dev\u73af\u5883"), 
    sit("10.94.1.13:8700", "sit-00300", "sit\u73af\u5883"), 
    sit2("10.94.1.13:8700", "sit2-00600", "sit2\u73af\u5883"), 
    mig("10.94.1.13:8700", "mig-00400", "mig\u73af\u5883"), 
    auto("10.94.1.13:8700", "auto-00500", "auto\u73af\u5883"), 
    cred("10.94.1.13:8700", "cred-00600", "cred\u73af\u5883"), 
    uat("10.94.1.13:8700", "uat-00700", "uat\u73af\u5883"), 
    u2("10.94.1.13:8700", "u2-00800", "u2\u73af\u5883"), 
    u3("10.94.1.13:8700", "u3-00900", "u3\u73af\u5883"), 
    sec("10.94.1.13:8700", "sec-00010", "sec\u73af\u5883"), 
    pfm("10.94.1.13:8700", "pfm-00020", "pfm\u73af\u5883"), 
    tke("10.94.1.13:8700", "tke-00050", "tke\u73af\u5883"), 
    dev830("10.94.1.13:8700", "dev830-00030", "dev830\u73af\u5883"), 
    sit830("10.94.1.13:8700", "sit830-00040", "sit830\u73af\u5883"), 
    uat3("10.94.1.13:8700", "cfdb05ac-5fde-4849-9ac5-2a3818e42303", "uat3\u73af\u5883"), 
    rc("10.26.220.4:8700", "rc-10000", "rc\u73af\u5883"), 
    prod("10.16.220.4:8700", "prod-00000", "prod\u73af\u5883");
    
    private final String value;
    private final String serverAddr;
    private final String message;
    
    private ZsfConfigEnum(final String serverAddr, final String namespace, final String message) {
        this.serverAddr = serverAddr;
        this.value = namespace;
        this.message = message;
    }
    
    public static ZsfConfigEnum getValue(final String nameSpace) {
        for (final ZsfConfigEnum val : values()) {
            if (val.name().equals(nameSpace)) {
                return val;
            }
        }
        return null;
    }
    
    public String getServerAddr() {
        return this.serverAddr;
    }
    
    public String getMessage() {
        return this.message;
    }
    
    public String getValue() {
        return this.value;
    }
}
